package com.cq.hd.product.api.dto;

import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;

import javax.validation.constraints.NotNull;
import java.math.BigDecimal;

/**
 * 拼团活动发布
 *
 * @author much
 * @since 2024/09/03 21:42
 */
@EqualsAndHashCode(callSuper = true)
@Data
public class GroupBuyActiveReleaseDto extends ActiveReleaseDto {

    @NotNull(message = "拼团价格不能为空")
    @ApiModelProperty(value = "拼团价格")
    private BigDecimal groupBuyPrice;

    @NotNull(message = "成团人数不能为空")
    @ApiModelProperty(value = "成团人数")
    private Integer groupNum;

    @NotNull(message = "成团时间不能为空")
    @ApiModelProperty(value = "成团时间（小时）")
    private Integer groupDuration;

    @NotNull(message = "是否虚拟成团不能为空")
    @ApiModelProperty(value = "是否虚拟成团 (0: 否, 1: 是)")
    private Integer virtualGroup;

    @NotNull(message = "开团权限不能为空")
    @ApiModelProperty(value = "开团权限 (ALL: 所有人, LEVEL1_AGENT: 一级经纪人)")
    private String groupCreatorPermission;

    @ApiModelProperty(value = "免单类型 (0-无，1: 团长免单, 2: 随机免单)")
    private Integer freeType;

    @ApiModelProperty(value = "团长0元开团开关 (0: 关闭, 1: 开启)")
    private Integer leadFreeEnabled = 0;

    @ApiModelProperty(value = "直接参团开关 (0: 关闭, 1: 开启)")
    private Integer directJoinEnabled = 0;

    @ApiModelProperty(value = "报名信息团长是否可见 (0: 不可见, 1: 可见)")
    private Integer leadViewEnrollInfo = 0;

}
